<!DOCTYPE HTML>

<html lang="en">
<head>

<title>EnableGlobalMethodSecurity (spring-security-docs 5.6.3 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../../../jquery/jquery-3.5.1.js"></script>
<script type="text/javascript" src="../../../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="EnableGlobalMethodSecurity (spring-security-docs 5.6.3 API)";
        }
    }
    catch(err) {
    }
//-->
var pathtoroot = "../../../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">

<div class="topNav"><a id="navbar.top">

</a>
<div class="skipNav"><a href="EnableGlobalMethodSecurity.html#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">

</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="EnableGlobalMethodSecurity.html#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="EnableGlobalMethodSecurity.html#annotation.type.element.detail">Element</a></li>
</ul>
</div>
<a id="skip.navbar.top">

</a></div>

</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>

<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.springframework.security.config.annotation.method.configuration</a></div>
<h2 title="Annotation Type EnableGlobalMethodSecurity" class="title">Annotation Type EnableGlobalMethodSecurity</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>@Retention(RUNTIME)
@Target(TYPE)
@Documented
@Import(org.springframework.security.config.annotation.method.configuration.GlobalMethodSecuritySelector.class)
<a href="../../authentication/configuration/EnableGlobalAuthentication.html" title="annotation in org.springframework.security.config.annotation.authentication.configuration">@EnableGlobalAuthentication</a>
@Configuration
public @interface <span class="memberNameLabel">EnableGlobalMethodSecurity</span></pre>
<div class="block"><p>
Enables Spring Security global method security similar to the
&lt;global-method-security&gt; xml support.
<p>
More advanced configurations may wish to extend
<a href="GlobalMethodSecurityConfiguration.html" title="class in org.springframework.security.config.annotation.method.configuration"><code>GlobalMethodSecurityConfiguration</code></a> and override the protected methods to provide
custom implementations. Note that <a href="EnableGlobalMethodSecurity.html" title="annotation in org.springframework.security.config.annotation.method.configuration"><code>EnableGlobalMethodSecurity</code></a> still must be
included on the class extending <a href="GlobalMethodSecurityConfiguration.html" title="class in org.springframework.security.config.annotation.method.configuration"><code>GlobalMethodSecurityConfiguration</code></a> to determine
the settings.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>3.2</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="annotation.type.optional.element.summary">

</a>
<h3>Optional Element Summary</h3>
<table class="memberSummary">
<caption><span>Optional Elements</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Optional Element</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="EnableGlobalMethodSecurity.html#jsr250Enabled()">jsr250Enabled</a></span></code></th>
<td class="colLast">
<div class="block">Determines if JSR-250 annotations should be enabled.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>org.springframework.context.annotation.AdviceMode</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="EnableGlobalMethodSecurity.html#mode()">mode</a></span></code></th>
<td class="colLast">
<div class="block">Indicate how security advice should be applied.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="EnableGlobalMethodSecurity.html#order()">order</a></span></code></th>
<td class="colLast">
<div class="block">Indicate the ordering of the execution of the security advisor when multiple
advices are applied at a specific joinpoint.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="EnableGlobalMethodSecurity.html#prePostEnabled()">prePostEnabled</a></span></code></th>
<td class="colLast">
<div class="block">Determines if Spring Security's pre post annotations should be enabled.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="EnableGlobalMethodSecurity.html#proxyTargetClass()">proxyTargetClass</a></span></code></th>
<td class="colLast">
<div class="block">Indicate whether subclass-based (CGLIB) proxies are to be created (<code>true</code>) as
opposed to standard Java interface-based proxies (<code>false</code>).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="EnableGlobalMethodSecurity.html#securedEnabled()">securedEnabled</a></span></code></th>
<td class="colLast">
<div class="block">Determines if Spring Security's <a href="../../../../access/annotation/Secured.html" title="annotation in org.springframework.security.access.annotation"><code>Secured</code></a> annotations should be enabled.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">

<section role="region">
<ul class="blockList">
<li class="blockList"><a id="annotation.type.element.detail">

</a>
<h3>Element Detail</h3>
<a id="prePostEnabled()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>prePostEnabled</h4>
<pre>boolean&nbsp;prePostEnabled</pre>
<div class="block">Determines if Spring Security's pre post annotations should be enabled. Default is
false.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if pre post annotations should be enabled false otherwise.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>false</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="securedEnabled()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>securedEnabled</h4>
<pre>boolean&nbsp;securedEnabled</pre>
<div class="block">Determines if Spring Security's <a href="../../../../access/annotation/Secured.html" title="annotation in org.springframework.security.access.annotation"><code>Secured</code></a> annotations should be enabled.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if <a href="../../../../access/annotation/Secured.html" title="annotation in org.springframework.security.access.annotation"><code>Secured</code></a> annotations should be enabled false otherwise.
Default is false.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>false</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="jsr250Enabled()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>jsr250Enabled</h4>
<pre>boolean&nbsp;jsr250Enabled</pre>
<div class="block">Determines if JSR-250 annotations should be enabled. Default is false.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if JSR-250 should be enabled false otherwise.</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>false</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="proxyTargetClass()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>proxyTargetClass</h4>
<pre>boolean&nbsp;proxyTargetClass</pre>
<div class="block">Indicate whether subclass-based (CGLIB) proxies are to be created (<code>true</code>) as
opposed to standard Java interface-based proxies (<code>false</code>). The default is
<code>false</code>. <strong>Applicable only if <a href="EnableGlobalMethodSecurity.html#mode()"><code>mode()</code></a> is set to
<code>AdviceMode.PROXY</code></strong>.
<p>
Note that setting this attribute to <code>true</code> will affect <em>all</em>
Spring-managed beans requiring proxying, not just those marked with the Security
annotations. For example, other beans marked with Spring's <code>@Transactional</code>
annotation will be upgraded to subclass proxying at the same time. This approach
has no negative impact in practice unless one is explicitly expecting one type of
proxy vs another, e.g. in tests.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if CGILIB proxies should be created instead of interface based
proxies, else false</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>false</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="mode()">

</a>
<ul class="blockList">
<li class="blockList">
<h4>mode</h4>
<pre>org.springframework.context.annotation.AdviceMode&nbsp;mode</pre>
<div class="block">Indicate how security advice should be applied. The default is
<code>AdviceMode.PROXY</code>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <code>AdviceMode</code> to use</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>AdviceMode</code></dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>org.springframework.context.annotation.AdviceMode.PROXY</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="order()">

</a>
<ul class="blockListLast">
<li class="blockList">
<h4>order</h4>
<pre>int&nbsp;order</pre>
<div class="block">Indicate the ordering of the execution of the security advisor when multiple
advices are applied at a specific joinpoint. The default is
<code>Ordered.LOWEST_PRECEDENCE</code>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the order the security advisor should be applied</dd>
</dl>
<dl>
<dt>Default:</dt>
<dd>2147483647</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>

<footer role="contentinfo">
<nav role="navigation">

<div class="bottomNav"><a id="navbar.bottom">

</a>
<div class="skipNav"><a href="EnableGlobalMethodSecurity.html#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">

</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Required&nbsp;|&nbsp;</li>
<li><a href="EnableGlobalMethodSecurity.html#annotation.type.optional.element.summary">Optional</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="EnableGlobalMethodSecurity.html#annotation.type.element.detail">Element</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">

</a></div>

</nav>
</footer>
<script>if (window.parent == window) {(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');ga('create', 'UA-2728886-23', 'auto', {'siteSpeedSampleRate': 100});ga('send', 'pageview');}</script><script defer src="https://static.cloudflareinsights.com/beacon.min.js/v652eace1692a40cfa3763df669d7439c1639079717194" integrity="sha512-Gi7xpJR8tSkrpF7aordPZQlW2DLtzUlZcumS8dMQjwDHEnw9I7ZLyiOj/6tZStRBGtGgN6ceN6cMH8z7etPGlw==" data-cf-beacon='{"rayId":"7040f6455bce97cf","token":"bffcb8a918ae4755926f76178bfbd26b","version":"2021.12.0","si":100}' crossorigin="anonymous"></script>
</body>
</html>
